CREATE EXTERNAL TABLE jms_dwd.dwd_wide_yl_rt_ssmx_bill_detail_hf(
  bill_code string COMMENT '运单号', 
  package_code string COMMENT '所属包号', 
  transfer_code string COMMENT '任务号', 
  latest_next_station_name string COMMENT '发件下一站名称', 
  latest_next_station_code string COMMENT '发件下一站名称code', 
  pick_network_code string COMMENT '寄件网点code', 
  pick_network_name string COMMENT '寄件网点', 
  pick_agent_code string COMMENT '寄件代理区code', 
  pick_agent_name string COMMENT '寄件代理区', 
  pick_franchisee_code string COMMENT '寄件加盟商code', 
  pick_franchisee_name string COMMENT '寄件加盟商', 
  pick_date string COMMENT '寄件时间', 
  latest_scan_date string COMMENT '寄件时间', 
  latest_scan_type int COMMENT '最新操作扫描类型 1-快件揽收 2-入仓扫描 3-发件扫描 4-到件扫描 5-中心到件 6-集货到件 7-出仓扫描 8-代理点收入扫描 9-入库扫描 10-快件取出扫描 11-问题件扫描 12-留仓件扫描', 
  latest_scan_code string COMMENT '扫描网点名称code', 
  latest_scan_name string COMMENT '扫描网点名称', 
  latest_scan_agent_code string COMMENT '扫描网点所属代理区名称code', 
  latest_scan_agent_name string COMMENT '扫描网点所属代理区名称', 
  latest_scan_franchisee_code string COMMENT '扫描网点所属加盟商名称code', 
  latest_scan_franchisee_name string COMMENT '扫描网点所属加盟商名称', 
  latest_scan_user_code string COMMENT '扫描员code', 
  latest_scan_user_name string COMMENT '扫描员名称', 
  customer_code string COMMENT '客户编码', 
  customer_name string COMMENT '客户名称', 
  liable_network_type int COMMENT '责任网点类型', 
  liable_network_name string COMMENT '责任网点名称', 
  liable_network_code string COMMENT '责任网点名称code', 
  liable_agent_name string COMMENT '责任网点所属代理区名称', 
  liable_agent_code string COMMENT '责任网点所属代理区名称code', 
  liable_franchisee_name string COMMENT '责任网点所属加盟商名称', 
  liable_franchisee_code string COMMENT '责任网点所属加盟商名称code', 
  difficult_info string COMMENT '问题件类型', 
  not_valid int COMMENT '是否有效', 
  package_inside_charge_weight string COMMENT '内部计费重量', 
  goods_name string COMMENT '物品名称', 
  goods_type string COMMENT '物品类型', 
  express_type_code string COMMENT '产品类型', 
  sender_province_id string COMMENT '寄件省份', 
  sender_province_name string COMMENT '寄件省份', 
  sender_city_id string COMMENT '寄件城市', 
  sender_city_name string COMMENT '寄件城市', 
  area_type int COMMENT '区域类型', 
  order_source_code string COMMENT '订单来源', 
  input_date string COMMENT '录入时间', 
  rec_date string COMMENT '揽收时间', 
  receiver_province_id string COMMENT '目的省份id', 
  receiver_province_name string COMMENT '目的省份', 
  receiver_city_id string COMMENT '目的城市id', 
  receiver_city_name string COMMENT '目的城市', 
  destination_agent_code string COMMENT '目的地代理区code', 
  destination_agent_name string COMMENT '目的地代理区', 
  biz_sign_site_code string COMMENT '签收网点code', 
  biz_sign_date string COMMENT '签收时间', 
  is_problem int COMMENT '是否问题件', 
  is_intercept int COMMENT '是否拦截件', 
  is_reback int COMMENT '是否问题件', 
  is_damaged int COMMENT '是否破损件', 
  is_mislaid int COMMENT '是否遗失件', 
  is_same_province int COMMENT '是否省内省外', 
  is_same_city int COMMENT '是否市内件', 
  forecast_last_site_code string COMMENT '预测目的网点code', 
  forecast_last_site_name string COMMENT '预测目的网点code', 
  forecast_last_site_agent_name string COMMENT '预测目的网点代理区', 
  forecast_last_site_agent_code string COMMENT '预测目的网点代理区code', 
  forecast_last_center_code string COMMENT '末中心code', 
  forecast_last_center_name string COMMENT '末中心', 
  last_center_next_site_code string COMMENT '途径集散点', 
  last_center_next_site_name string COMMENT '途径集散点', 
  last_center_come_date string COMMENT '扫描到件时间', 
  last_center_scan_user string COMMENT '扫描人', 
  last_center_scan_user_code string COMMENT '扫描人code', 
  planned_delivery_date string COMMENT '散货日期', 
  shift int COMMENT '散货班次', 
  problem_desc_code string COMMENT '问题件类型描述code', 
  problem_desc string COMMENT '问题件类型描述', 
  pre_scan_code string COMMENT '上一站扫描网点', 
  pre_scan_date string COMMENT '上一站扫描时间', 
  pre_scan_type int COMMENT '上一站扫描类型', 
  problem_scan_date string COMMENT '问题件扫描时间', 
  problem_scan_site_name string COMMENT '问题件扫描网点', 
  problem_scan_site_code string COMMENT '问题件扫描网点code', 
  order_input_date string COMMENT '订单创建时间', 
  is_finish int COMMENT '是否完结', 
  gmt_create_date string COMMENT '创建时间', 
  gmt_update_date string COMMENT '更新时间', 
  pre_scan_name string COMMENT '上一站扫描站点名称', 
  pre_scan_site_agent_name string COMMENT '上一站扫描站点代理区', 
  pre_scan_site_agent_code string COMMENT '上一站扫描站点代理区code', 
  pre_scan_site_franchisee_name string COMMENT '上一站扫描站点加盟商', 
  pre_scan_site_franchisee_code string COMMENT '上一站扫描站点加盟商code', 
  latest_scan_site_type string COMMENT '最新扫描站点类型', 
  version bigint COMMENT '当前数据版本号', 
  rec_site_code string COMMENT '揽收网点', 
  rec_user_code string COMMENT '揽收业务员code', 
  rec_user_name string COMMENT '揽收业务员', 
  terminal_dispatch_code string COMMENT '三段码', 
  ware_house_site_code string COMMENT '入仓扫描网点code', 
  ware_house_send_deliver_user_code string COMMENT '扫描员', 
  ware_house_pistol_id string COMMENT 'pid', 
  ware_house_site_date string COMMENT '入仓扫描时间', 
  first_center_code string COMMENT '首中心code', 
  first_center_send_date string COMMENT '首中心发件时间', 
  first_center_name string COMMENT '首中心', 
  first_center_come_date string COMMENT '首中心到件时间', 
  ware_next_site_code string COMMENT '入仓扫描发件下一站code', 
  ware_next_site_name string COMMENT '入仓扫描发件下一站', 
  ware_next_send_date string COMMENT '入仓扫描发件下一站扫描时间', 
  first_bagging_site_code string COMMENT '首次建包扫描网点code', 
  first_bagging_site_name string COMMENT '首次建包扫描网点', 
  first_bagging_site_date string COMMENT '首次建包扫描网点时间', 
  last_bagging_site_code string COMMENT '末次建包扫描网点code', 
  last_bagging_site_name string COMMENT '末次建包扫描网点', 
  last_bagging_site_date string COMMENT '末次建包扫描网点时间', 
  last_center_name string COMMENT '末中心', 
  last_center_code string COMMENT '末中心code', 
  last_center_send_date string COMMENT '末中心发件时间', 
  deliver_date string COMMENT '派件时间', 
  deliver_site_code string COMMENT '派件code', 
  deliver_site_name string COMMENT '派件时间', 
  collect_in_site_date string COMMENT '入库扫描时间', 
  collect_in_site_name string COMMENT '入库扫描网点', 
  collect_in_site_code string COMMENT '入库扫描网点code', 
  collect_out_site_date string COMMENT '出库扫描时间', 
  collect_out_site_name string COMMENT '出库扫描网点', 
  collect_out_site_code string COMMENT '出库扫描网点code', 
  biz_sign_name string COMMENT '出库扫描网点code', 
  sign_site_name string COMMENT '出库扫描网点code', 
  sign_date string COMMENT '出库扫描网点code', 
  sign_site_code string COMMENT '出库扫描网点code', 
  pre_liable_network_type int COMMENT '上一站责任扫描类型', 
  pre_liable_network_name string COMMENT '上一站责任扫描网点', 
  pre_liable_network_code string COMMENT '上一站责任扫描网点code', 
  pre_liable_agent_name string COMMENT '上一站责任扫描代理区', 
  pre_liable_agent_code string COMMENT '上一站责任扫描代理区code', 
  pre_liable_franchisee_name string COMMENT '上一站责任扫描加盟商', 
  pre_liable_franchisee_code string COMMENT '上一站责任扫描加盟商code', 
  end_date string COMMENT '完结时间', 
  bill_state int COMMENT '运单状态', 
  intercept_network_name string COMMENT '拦截网点名称', 
  intercept_network_code string COMMENT '拦截网点编码', 
  intercept_date string COMMENT '拦截时间', 
  is_in_house int COMMENT '是否留仓件', 
  order_id string COMMENT '订单id', 
  order_source_name string COMMENT '订单来源名称')
COMMENT '运单全链路小时宽表'
PARTITIONED BY ( 
  dt string COMMENT '运单录入日期(yyyy-MM-dd-HH)')
ROW FORMAT SERDE 
  'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe' 
STORED AS INPUTFORMAT 
  'org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat' 
OUTPUTFORMAT 
  'org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat'
LOCATION
  'hdfs://yl-bg-hdp/dw/hive/jms_dwd.db/external/dwd_wide_yl_rt_ssmx_bill_detail_hf'
  ;
alter table jms_dwd.dwd_wide_yl_rt_ssmx_bill_detail_hf add columns (
    pre_scan_user_code string COMMENT '上一站扫描员code',
    pre_scan_user_name string  COMMENT '上一站扫描员',
    end_code_desc string  COMMENT '完结',
    end_code string  COMMENT '完结code',
    last_site_code string  COMMENT '末中心发件下一站网点code',
    last_site_name string  COMMENT '末中心发件下一站网点',
    last_site_come_date string  COMMENT '末网点到件时间',
    last_site_come_code string  COMMENT '末网点到件网点code',
    last_site_come_name string  COMMENT '末网点到件网点',
    first_collect_in_site_code string  COMMENT '首集散code',
    first_collect_in_site_name string  COMMENT '首集散',
    first_collect_in_site_come_date string  COMMENT '首集散到件时间',
    first_collect_in_site_send_date string  COMMENT '首集散发件时间',
    last_collect_in_site_code string  COMMENT '末集散code',
    last_collect_in_site_name string  COMMENT '末集散code',
    last_collect_in_site_come_date string  COMMENT '末集散到件时间',
    last_collect_in_site_send_date string  COMMENT '末集散发件时间',
    send_deliver_user string  COMMENT '派件员',
    send_deliver_user_id string  COMMENT '派件员id',
    is_receive2 bigint  COMMENT '是否入库',
    problem_type_name string  COMMENT '问题件一级类型',
    second_level_type_code string  COMMENT '二级类型code',
    second_level_type_name string  COMMENT '二级类型',
    registration_network_code string  COMMENT '问题件登记网点code',
    registration_network_name string  COMMENT '问题件登记网点',
    receive_network_code string  COMMENT '接受网点code',
    receive_network_name string  COMMENT '接受网点',
    problem_type_subject_code string  COMMENT '问题件类型',
    problem_type_subject_id string  COMMENT '问题件类型',
    problem_type_subject_name string  COMMENT '问题件类型',
    sender_network_id string  COMMENT '发件网点',
    registration_time string  COMMENT '登记时间',
    predict_come_site_date string  COMMENT '末中心预计到达时间',
    station_brand string  COMMENT '驿站品牌',
    reback_transfer_network_name string  COMMENT '退改件网点',
    reback_transfer_network_code string  COMMENT '退改件网点code',
    is_transfer bigint  COMMENT '是否转寄',
    third_code string  COMMENT '大头笔',
    receiver_detail_address string  COMMENT '详细地址信息',
    receiver_area_name string  COMMENT '区域名称'
    )
;
-- 2023-03-03
alter table jms_dwd.dwd_wide_yl_rt_ssmx_bill_detail_hf add columns (
    first_transfer_center_name string COMMENT "第一中转中心名称",
    first_transfer_center_code string COMMENT "第一中转中心code",
    first_transfer_center_send_date string COMMENT "第一中转中心发件时间",
    first_transfer_center_come_date string COMMENT "第一中转中心到件时间",
    second_transfer_center_send_date string COMMENT "第二中转中心到件时间",
    second_transfer_center_come_date string COMMENT "第二中转中心到件时间",
    second_transfer_center_name string COMMENT "第二中转中心名称",
    second_transfer_center_code string COMMENT "第二中转中心code",
    third_transfer_center_send_date string COMMENT "第三中转中心发件时间",
    third_transfer_center_come_date string COMMENT "第三中转中心到件时间",
    third_transfer_center_name string COMMENT "第三中转中心名称",
    third_transfer_center_code string COMMENT "第三中转中心code",
    latest_pre_scan_site_code string COMMENT "最新站点上一站code",
    latest_pre_scan_site_name string COMMENT "最新站点上一站name",
    pre_site_code string COMMENT "上一站code",
    pre_site_name string COMMENT "上一站name",
    pre_site_date string COMMENT "上一站扫描时间",
    first_site_loading_send_shipment_no string COMMENT "首网点发车批次号",
    first_site_loading_send_planned_departure_date string COMMENT "首网点发车计划发车时间",
    first_site_loading_send_planned_arrival_date string COMMENT "首网点发车计划到达时间",
    first_collect_in_site_loading_send_shipment_no string COMMENT "首集散发车批次号",
    first_collect_in_site_loading_planned_arrival_date string COMMENT "首集散发车计划到达时间",
    first_collect_in_site_loading_planned_departure_date string COMMENT "首集散发车计划发车时间",
    first_center_unloading_arrival_shipment_no string COMMENT "首中心卸车批次号",
    first_center_unloading_arrival_planned_departure_date string COMMENT "首中心卸车到件规划发车时间",
    first_center_unloading_arrival_planned_arrival_date string COMMENT "首中心卸车到件规划到车时间",
    first_center_loading_arrival_shipment_no string COMMENT "首中心装车发件扫描对应任务号",
    first_center_loading_arrival_planned_departure_date string COMMENT "首中心装车发件规划发车时间",
    first_center_loading_arrival_planned_arrival_date string COMMENT "首中心装车发件规划到车时间",
    last_center_unloading_arrival_shipment_no string COMMENT "末中心卸发件扫描对应任务号",
    last_center_unloading_arrival_planned_departure_date string COMMENT "末中心卸车发件规划发车时间",
    last_center_unloading_arrival_planned_arrival_date string COMMENT "末中心卸车发件规划到车时间",
    last_center_loading_send_shipment_no string COMMENT "末中心装车发件扫描对应任务号",
    last_center_loading_send_planned_departure_date string COMMENT "末中心装车发件规划发车时间",
    last_center_loading_send_planned_arrival_date string COMMENT "末中心装车发件规划到车时间"
    )
;
